1. Field of Invention
The present invention relates to a method for updating a control program of at least one physical storage device (PSD) in a storage virtualization system, and more particularly, to a storage virtualization controller and system using the method thereof.
2. Description of Related Art
With regard to the related prior arts, please refer to U.S. Pat. Nos. 7,032,218 , 6,907,504, 6,728,833, 6,816,950, 6,820,211 and U.S. Patent Publication No. 2005033933.
It can be known from the above prior arts that: in conventional storage virtualization systems, when updating control programs of hard disk drives (HDDs), the systems will enter degraded mode. Under the degraded mode and without interrupting read/write requests from a host entity, the systems can update control program of only one HDD at one time. However, a storage virtualization system generally has many HDDs. If it needs to update all of the HDDs in the system, the update will consume quite a lot of time and make the system stay in the degraded mode for a long time, which results in poor performance of the overall system and results in increasing the risk of data loss. Further, in some conventional prior arts, all of the data in HDD need to be updated with control program have to be first duplicated to another proxy HDD, and then an updating procedure begins. Upon completion of updating the control program of the HDD, all of the data in the proxy HDD are copied back to the HDD, which is time-consuming and results in poor performance.
Moreover, in the prior arts, when a HDD is being rebuilt after its control program has been updated, the HDD cannot be accessed, which greatly reduces system performance.
Further, during the procedure of updating a control program of a PSD in the conventional storage virtualization systems, if the system merely has single set of parity data for checking user data, when failure of other PSD occurs, a portion of data in the system will be lost and cannot be rebuilt, which causes irrecoverable data damages.
Summarizing from the above, while updating a control program of a PSD, the conventional storage virtualization system has the disadvantages of consuming long time for updating the procedure, of poor performance of overall system, and of high risk of data loss, and during the procedure of updating the control program of PSD, if the system merely has single set of parity data for checking user data, a significant disaster of system data loss will be caused when failure of other PSD occurs.